Non-volatile memory (NVM) systems, such as flash memory, have been widely adopted for use in consumer products. In addition to NAND flash memory, other exemplary memories may include NOR, ORNAND, 3D memory and charge trapping memory with material such as silicon nitride, and phase change memory such as ReRAM, and semi-volatile memory such as DRAM and SRAM.
Flash memory may be found in different forms, for example in the form of a portable memory card that can be carried between host devices or as a solid state disk (SSD) embedded in a host device. Flash memory may be written in pages and erased in blocks, so once a page is written, a rewrite may require the whole block to be erased. Rewrites may be necessary if there is a write error or failure.
The flash memory blocks used in the solid state storage system may undergo multiple programming and erasing cycles, and the blocks, as they are written, may create more and more defects or memory imperfections as the write cycling counts increase. For example, NAND defects including broken word lines (WL) or wordline to wordline (WL-WL) shorts may result in data errors. These defects or cell imperfections may lead to memory degradation. The degradation of a memory cell may cause the memory system behavior to deteriorate and system operations may eventually fail. Prevention of programming errors may require an identification of problems or errors in the memory.